/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package fr.ove.openmath.jome.model.processor;

/**
 *
 * @author Mr.Sam
 */
import java.util.Vector;

/**
* The interface to implement to be a width processor.<BR>
* A width processor manages to display a certain amount of children (the view)
* of an element whose number of children (the width) is greater than a specified level.
*
* @author © 2000 DIRAT Laurent
* @version 1.0  21/08/2000
*/
public interface WidthProcessorInterface extends Processor {
    /**
    * Sets the width level form which the processing will be considering.<BR>
    * For convenience only, in most cases this method is equivalent to the
    * @see setLevel of the @see Processor interface.
    * @param widthLevel the width level.
    */
    public void setWidthLevel(int widthLevel);
    
    /**
    * Returns the width level form which the processing will be considering.<BR>
    * For convenience only, in most cases this method is equivalent to the
    * @see getLevel of the @see Processor interface.
    */
    public int getWidthLevel();
    
    /**
    * Sets the number of children viewed.
    * @param the number of children viewed.
    */
    public void setView(int view);
    
    /**
    * Returns the number of children viewed.
    */
    public int getView();
    
    /**
    * Returns the list of widths calculated.
    */
    public Vector getWidthList();
    
    /**
    * Returns the biggest width calculated.
    */
    public int getBiggestWidth();
}
